//
// IUT de Nice / Departement informatique / Module APO Java
// Annee 2011_2012 - Package _Himalaya
//
// Classe Sentier
//
// Auteur : A. Fourrier
//

import java.*;
import java.util.*;

public class T_Sentier_A1 {

   public static void main (String[] args) {

      Tests.Begin("_Himalaya.Sentier", "1.0.0");

         Tests.Design("Controle des constructeurs et des accesseurs", 3); {
			int compteur =0;

            Tests.Case("Cas d'un parametre invalide (-2.1)"); {
            	Village v1 = null;
            	Village v2 = null;
            	Sentier s1 = null;
            	LinkedList l1=null;


			   try {
					v1 = new Village(1,2,l1);
           		 	v2 = new Village(3,2,l1);
					s1 = new Sentier ("eau",v1,v2);
					}
   				   catch (Throwable e) {
   				   	compteur++;
                  Tests.Unit(1, compteur);
                  }
             }

             Tests.Case("Cas d'un parametre invalide (-2.2)"); {
            	Village v1 = null;
            	Village v2 = null;
            	Sentier s1 = null;
            	LinkedList l1=null;

				try {
					v1 = new Village(0,2,l1);
           		 	v2 = new Village(3,2,l1);
					s1 = new Sentier ("terre",v1,v2);
					}
   				   catch (Throwable e) {
   				   	compteur++;
                  Tests.Unit(2, compteur);
                  }

                  try {
					v1 = new Village(21,2,l1);
           		 	v2 = new Village(3,2,l1);
					s1 = new Sentier ("terre",v1,v2);
					}
   				   catch (Throwable e) {
   				   	compteur++;
                  Tests.Unit(3, compteur);
                  }

                  try {
					v1 = new Village(1,2,l1);
           		 	v2 = new Village(3,2,l1);
					s1 = new Sentier ("terre",v1,v1);
					}
   				   catch (Throwable e) {
   				   	compteur++;
                  Tests.Unit(4, compteur);
                  }
             }

             Tests.Case("Cas d'un parametre invalide (-2.3)"); {
            	Village v1 = null;
            	Village v2 = null;
            	Sentier s1 = null;
            	LinkedList l1=null;

                  try {
					v1 = new Village(1,2,l1);
           		 	v2 = new Village(0,2,l1);
					s1 = new Sentier ("terre",v1,v2);
					}
   				   catch (Throwable e) {
   				   	compteur++;
                  Tests.Unit(5, compteur);
                  }

                  try {
					v1 = new Village(1,2,l1);
           		 	v2 = new Village(93,2,l1);
					s1 = new Sentier ("terre",v1,v2);
					}
   				   catch (Throwable e) {
   				   	compteur++;
                  Tests.Unit(6, compteur);
                  }
             }

         }
      Tests.End();
   }
}
